[Caml] Fiche de Cours
[Caml] Fiche de Cours
Lien Moodle : https://moodle.epita.fr/mod/page/view.php?id=104266
Description
ECUE Caml et récursivité / Caml and Recursivity
Contenu du cours
UE Produire - ECUE Caml et récursivité
- Référents : Nathalie Bouquet et Ian Ternier
- Coefficient dans l'UE : 3 / 15
Résumé
- Apprentissage des bases du langage Caml, uniquement la partie purement fonctionnelle dans le but de :
- familiariser et entrainer les étudiants au raisonnement récursif nécessaire à de nombreux algorithmes classiques étudiés pendant le cursus ;
- aborder les premières structures de données récursives avec les listes Caml.
- Premières notions de complexité en temps : règles de base pour limiter les calculs (éviter les calculs inutiles, ne pas répéter des calculs, arrêter dès qu'une réponse est donnée.)
Plan du cours
- Pendant le séminaire :
- Bases : expressions - définitions
- Les fonctions :
- à un paramètre
- à plusieurs paramètres
- Analyses par cas :
- L'alternative
- Le filtrage
- Récursivité :
- Raisonnement récursif - Fonctions récursives simples - Fonctions récursives à plusieurs appels
- Introduction à l'optimisation (complexité en temps)
- En TD ensuite :
- Les listes (lien avec le type abstrait liste récursive de l'ECUE Types Algébriques Abstraits)
- Les fonctions d'ordre supérieur
Aquis d'Apprentissage Visés
- À l'issue du séminaire les étudiants sont capables de
- évaluer du code Caml simple (fonctionnel uniquement)
- écrire des fonctions Caml récursives à un ou plusieurs appels sur des données élémentaires
- À l'issu des TDs ensuite, les étudiants sont capables de
- résoudre des problèmes récursifs simples et les traduire en langage Caml
- écrire des fonctions Caml manipulant des structures de données séquentielles récursives (listes), en appliquant les règles simples d'optimisation
- utiliser l'ordre supérieur pour généraliser des calculs, en particulier sur les listes
Evaluations
- [qcms] QCMs du séminaire 6 * 15min
- [examB1] Examen écrit (fin B1) = 1h30
- note = 30% [qcms] + 70% [examB1]